package fr.afcepf.ai89.lagrandebouffe.business;

import java.util.List;

import fr.afcepf.ai89.lagrandebouffe.entity.Plat;
/**
 * méthodes métiers utilisées par l'application.
 * @author stagiaire
 */
public interface IBusinessPlat {
    /**
     * méthode qui permet de créer un nouveau {@link Plat}.
     * @param lePlat - le nouveau {@link Plat} à créer.
     * @return la clé primaire du {@link Plat} s'il est bien ajouté, null s'il n'a pas pu etre ajouté ou existe déjà.
     */
    Integer ajouterPlat(Plat lePlat);
    /**
     * méthode qui permet de renseigner qu'un {@link Plat} a été mangé.
     * @param lePlat - {@link Plat} à manger.
     * @return true si le {@link Plat} est bien mangé sinon false.
     */
    boolean mangerPlat(Plat lePlat);
    /**
     * méthode qui permet de rechercher un {@link Plat} par son libellé.
     * @param unLibelle - libellé du {@link Plat} à chercher.
     * @return une liste de {@link Plat} correspondant au libellé renseigné sinon une liste vide.
     */
    List<Plat> rechercherPlat(String unLibelle);
}
